package com.foreveross.taskservice.taskcache;

import java.util.Set;

import com.foreveross.taskservice.common.CacheDataSpace;
import com.foreveross.taskservice.common.model.AbstractTaskModel;


/**
 * 缓存任务的刷新清理等接口
 * @author Administrator
 *
 */
public interface ITaskCacheFlush {
	/**
	 * 清理所有内存数据，一滴不剩
	 * @return
	 * @throws Exception
	 */
	public boolean flushDB()throws Exception;
	public boolean flushAll()throws Exception;
	/**
	 * 根据数据空间和指定渠道清理所有任务，并返回
	 * 此接口不建议试用，容易内存溢出和设计存在不合理，涉及到业务删除的方面太多，所以建议采用query接口批量取出批量操作
	 * 
	 * @param d
	 * @param channelId
	 * @return
	 * @throws Exception
	 */
	@Deprecated
	public Set<AbstractTaskModel> flushTask(CacheDataSpace d,String channelId)throws Exception;
}
